<?php

	include_once("./Model/SubGrupo.php");
	include_once("./DAO/SubGrupoDAO.php");
	include_once("./Model/Produto.php");
	include_once("./DAO/ProdutoDAO.php");
	include_once("./Util/Lista.php");

	class ProdutoController{

		private $produto;
		private $produtos = array();

		public function __construct(){
			$this->produto = new Produto();			
		}

		public function cadastrar(){
			$subgrupoDAO = new SubGrupoDAO();
			$this->subgrupos = $subgrupoDAO->listar();
			include_once("./View/FormProduto.php");
		}

		public function alterar(){
			$idProduto = isset($_POST["idProduto"]) ? $_POST["idProduto"] : false;	
			
			$produtoDAO = new ProdutoDAO();
			$this->produto = $produtoDAO->recuperar($idProduto);	

			$subgrupoDAO = new SubGrupoDAO();
			$this->subgrupos = $subgrupoDAO->listar();
			include_once("./View/FormProduto.php");

		}

		public function excluir(){
			$idProduto	= isset($_POST["idProduto"]) ? $_POST["idProduto"] : false;
		
			$produtoDAO = new ProdutoDAO();
			if(!$produtoDAO->excluir($idProduto))
				exit("Erro ao excluir Produto!");

			$this->listar();				
				
		}

		public function salvar(){

			$idProduto 	= isset($_POST["idProduto"])  ? trim($_POST["idProduto"])  : "";
			$idSubGrupo = isset($_POST["idSubGrupo"]) ? trim($_POST["idSubGrupo"]) : "";
			$descricao 	= isset($_POST["descricao"])  ? trim($_POST["descricao"])  : "";
			$preco		= isset($_POST["preco"]) 	  ? trim($_POST["preco"]) 	   : "";
			$detalhes 	= isset($_POST["detalhes"])   ? trim($_POST["detalhes"])   : "";

			if( empty($descricao) )
				$erro.="Nome deve ser Preenchido!<br/>";
				
			if( empty($detalhes) )
				$erro.="A detalhes deve ser Preenchida!<br/>";	
				
			if( empty($preco) )	
				$erro.="O preço deve ser Preenchido!<br/>";

			$this->produto->setIdProduto($idProduto);
			$this->produto->setIdSubGrupo($idSubGrupo);
			$this->produto->setDescricao($descricao);
			$this->produto->setPreco($preco);
			$this->produto->setDetalhes($detalhes);		
				
			if( empty($erro) )
			{
				$produtoDAO = new ProdutoDAO();
				$produtoDAO->salvar($this->produto);
				$this->listar();
			}else{
				$this->cadastrar();
			}			
		}

		public function listar(){

			$produtoDAO = new ProdutoDAO();
			$this->produtos = $produtoDAO->listar();

			include_once("./View/ListaProduto.php");	
		}
	}


?>